package com.getui.java.template;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import com.getui.java.COMM;
import com.gexin.rp.sdk.base.IPushResult;
import com.gexin.rp.sdk.base.impl.AppMessage;
import com.gexin.rp.sdk.http.IGtPush;
import com.gexin.rp.sdk.template.NotyPopLoadTemplate;

public class NotyPopLoadTemplateDemo {

	public static NotyPopLoadTemplate notyPopLoadTemplateDemo() {
		NotyPopLoadTemplate template = new NotyPopLoadTemplate();
		// 设置APPID与APPKEY
		template.setAppId(COMM.appId);
		template.setAppkey(COMM.appKey);
		// 设置通知栏标题与内容
		template.setNotyTitle("请输入通知栏标题");
		template.setNotyContent("请输入通知栏内容");
		// 配置通知栏图标
		template.setNotyIcon("icon.png");
		// 设置通知是否响铃，震动，或者可清除
		template.setBelled(true);
		template.setVibrationed(true);
		template.setCleared(true);
		// 设置弹框标题与内容
		template.setPopTitle("弹框标题");
		template.setPopContent("弹框内容");
		// 设置弹框显示的图片
		template.setPopImage("");
		template.setPopButton1("下载");
		template.setPopButton2("取消");
		// 设置下载标题
		template.setLoadTitle("下载标题");
		template.setLoadIcon("file://icon.png");
		// 设置下载地址
		template.setLoadUrl("http://gdown.baidu.com/data/wisegame/80bab73f82cc29bf/shoujibaidu_16788496.apk");
		// 设置定时展示时间
		// template.setDuration("2015-01-16 11:40:00", "2015-01-16 12:24:00");
		return template;
	}

	public static void main(String[] args) throws IOException {

		IGtPush push = new IGtPush(COMM.url, COMM.appKey, COMM.masterSecret);

		// 定义"点击链接打开通知模板"，并设置标题、内容、链接
		NotyPopLoadTemplate template = notyPopLoadTemplateDemo();

		List<String> appIds = new ArrayList<String>();
		appIds.add(COMM.appId);

		// 定义"AppMessage"类型消息对象，设置消息内容模板、发送的目标App列表、是否支持离线发送、以及离线消息有效期(单位毫秒)
		AppMessage message = new AppMessage();
		message.setData(template);
		message.setAppIdList(appIds);
		message.setOffline(true);
		message.setOfflineExpireTime(1000 * 3600);
		// 可选，1为wifi，0为不限制网络环境。根据手机处于的网络情况，决定是否下发
		message.setPushNetWorkType(0);
		// 全量推送个推控制下发速度在100条/秒，只有toApp支持定速推送。
		message.setSpeed(100);

		IPushResult ret = push.pushMessageToApp(message);
		System.out.println(ret.getResponse().toString());
		// {result=ok, contentId=OSA-1208_m9Qmrwmwvc5ev2HpXijsi}

		if ("ok".equals(ret.getResponse().get("result"))) {
			System.out.println("发送成功");
		} else {
			System.out.println("发送失败");
		}
	}
}
